/*
 * DS18B20.h
 *
 *  Created on: Dec 13, 2024
 *      Author: admire
 */

#ifndef DS18B20_H_
#define DS18B20_H_

#include "main.h"

/* DS18B20引脚 定义 */
#define DS18B20_GPIO_Port			GPIOA
#define DS18B20_Pin					GPIO_PIN_7
#define DS18B20_GPIO_CLK_ENABLE()	__HAL_RCC_GPIOA_CLK_ENABLE()   //时钟使能

/* 用户操作函数 */
#define DS18B20_OUT(x)	HAL_GPIO_WritePin(DS18B20_GPIO_Port, DS18B20_Pin, x ? GPIO_PIN_SET : GPIO_PIN_RESET)//数据端口输出
#define DS18B20_IN       HAL_GPIO_ReadPin(DS18B20_GPIO_Port, DS18B20_Pin)     //数据端口输入

uint8_t ds18b20_init(void);         //初始化DS18B20
uint8_t ds18b20_check(void);        //检测是否存在DS18B20
float ds18b20_get(void);//获取温度

#endif /* DS18B20_H_ */
